# !/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
===========================
@Time : 2022/8/8 0008 23:41
@Author : 测试开发工程师
@File : 2. jenkins Pipeline初探.py
@Software: PyCharm
============================
"""

"""
Jenkins Pipeline概念
    借用 Unix 中的 Pipeline 思路，一种高内聚低耦合的工具
    Jenkins 2.0 以上版本才会有
    一系列 Jenkins 插件将整个持续集成用解释性代码 Jenkinsfile 来描述
    Jenkinsfile 使用方法：
        Jenkins 任务页面输入
        源代码工程中编辑
    Jenkinsfile 语法：
        Declarative pipeline
        Scripts pipeline
    
Jenkins Pipeline 入门
    Jenkins 中创建一个 pipeline 任务
    Definition 中选择 Pipeline Script
    在 Pipeline 模块添加右侧所示代码
    
pipeline {
    agent any
    stages {
        stage("begin"){
            steps{
                echo "Hello pipeline"
                }
        }
    }
    post{
        always{
            echo "say goodbay"
        }
    }
}



Pipeline Script 
    jenkins 运行查看结果，能看到不同构建阶段独立显示，展示清新

pipeline {
    agent any
    stages {
        stage("begin"){
            steps{
                echo "hello pipeline begin"
                sleep 5
                }
        }
    stage("running"){
            steps{
                echo "hello pipeline running"
                sleep 5
                }
        }
   stage("finish"){
            steps{
                echo "hello pipeline finish"
                sleep 5
                // sh 'exit 0'
                }
        }
    }
    post{
        success{
            echo "goodbay pipeline success!"
            sleep 5
        }
         failure{
            echo "ops!!! pipeline failed..."
            sleep 5
        }
        always{
            echo "always say goodbay"
        }
    }
}


Pipeline Script from SCM：
    Pipeline 的代码也可以放入 git 源码库进行管理
    在 Jenkins Pipeline 任务中选择 Pipeline script from SCM，然后添加 git 源码地址，在 Script Path 中填写需要运行的 Jenkinsfile 文件所在的地址
    例子源码位置： https://gitee.com/ytq12875/pipeline.git

"""
